/**
* @author sunke
* @Date 2023-09-22 22:03:52
* @description 职位名称
*/
package cn.jobstart.model;

import cn.jobstart.pubInter.BaseTimeDoMain;
import javax.validation.constraints.*;
import org.hibernate.validator.constraints.Length;

public class Job extends BaseTimeDoMain {
    /**
     * 排序
     */
    private Integer sortNum = 0;

    /**
     * 是否显示
     * 1:是:Y,0:否:N
     */
    private Integer showFlag = 1;

    /**
     * 是否删除
     * 1:删除:Y,0:正常:N
     */
    private Integer delFlag = 0;

    /**
     * 版本
     */
    private Integer version;

    /**
     * 职位名称
     */
    @Length(max=50,message="职位名称长度最大值50")
    private String name;

    /**
     * 职位上级ID
     */
    @Length(max=32,message="职位上级ID长度最大值32")
    private String upId;

    /**
     * 备注
     */
    @Length(max=200,message="备注长度最大值200")
    private String remark;

    /**
     * 等级
     */
    private Integer level;

    /**
     * 是否有下级
     * 1:有:Y,0:无:N
     */
    private Integer nextFlag;

     /**
     *主键
     */
    public static final String ID = "job.j_id";

     /**
     *创建时间
     */
    public static final String CREATE_TIME = "job.j_create_time";

     /**
     *更新时间
     */
    public static final String UPDATE_TIME = "job.j_update_time";

     /**
     *排序
     */
    public static final String SORT_NUM = "job.j_sort_num";

     /**
     *是否显示
     */
    public static final String SHOW_FLAG = "job.j_show_flag";

     /**
     *是否删除
     */
    public static final String DEL_FLAG = "job.j_del_flag";

     /**
     *版本
     */
    public static final String VERSION = "job.j_version";

     /**
     *职位名称
     */
    public static final String NAME = "job.j_name";

     /**
     *职位上级ID
     */
    public static final String UP_ID = "job.j_up_id";

     /**
     *备注
     */
    public static final String REMARK = "job.j_remark";

     /**
     *等级
     */
    public static final String LEVEL = "job.j_level";

     /**
     *是否有下级
     */
    public static final String NEXT_FLAG = "job.j_next_flag";

     /**
     *填充detail key
     */
    public static final String JOB_FULL_DETAIL_KEY = "JOB_FULL_DETAIL";

     /**
     *填充list key
     */
    public static final String JOB_FULL_LIST_KEY = "JOB_FULL_LIST";

    /**
     * 获取排序
     *
     * @return j_sort_num - 排序
     */
    public Integer getSortNum() {
        return sortNum;
    }

    /**
     * 设置排序
     *
     * @param sortNum 排序
     */
    public Job setSortNum(Integer sortNum) {
        this.sortNum = sortNum;
        return this;
    }

    /**
     * 获取是否显示
     *
     * @return j_show_flag - 是否显示
     */
    public Integer getShowFlag() {
        return showFlag;
    }

    /**
     * 设置是否显示
     * 1:是:Y,0:否:N
     *
     * @param showFlag 是否显示
     */
    public Job setShowFlag(Integer showFlag) {
        this.showFlag = showFlag;
        return this;
    }

    /**
     * 获取是否删除
     *
     * @return j_del_flag - 是否删除
     */
    public Integer getDelFlag() {
        return delFlag;
    }

    /**
     * 设置是否删除
     * 1:删除:Y,0:正常:N
     *
     * @param delFlag 是否删除
     */
    public Job setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
        return this;
    }

    /**
     * 获取版本
     *
     * @return j_version - 版本
     */
    public Integer getVersion() {
        return version;
    }

    /**
     * 设置版本
     *
     * @param version 版本
     */
    public Job setVersion(Integer version) {
        this.version = version;
        return this;
    }

    /**
     * 获取职位名称
     *
     * @return j_name - 职位名称
     */
    public String getName() {
        return name;
    }

    /**
     * 设置职位名称
     *
     * @param name 职位名称
     */
    public Job setName(String name) {
        this.name = name == null ? null : name.trim();
        return this;
    }

    /**
     * 获取职位上级ID
     *
     * @return j_up_id - 职位上级ID
     */
    public String getUpId() {
        return upId;
    }

    /**
     * 设置职位上级ID
     *
     * @param upId 职位上级ID
     */
    public Job setUpId(String upId) {
        this.upId = upId == null ? null : upId.trim();
        return this;
    }

    /**
     * 获取备注
     *
     * @return j_remark - 备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置备注
     *
     * @param remark 备注
     */
    public Job setRemark(String remark) {
        this.remark = remark == null ? null : remark.trim();
        return this;
    }

    /**
     * 获取等级
     *
     * @return j_level - 等级
     */
    public Integer getLevel() {
        return level;
    }

    /**
     * 设置等级
     *
     * @param level 等级
     */
    public Job setLevel(Integer level) {
        this.level = level;
        return this;
    }

    /**
     * 获取是否有下级
     *
     * @return j_next_flag - 是否有下级
     */
    public Integer getNextFlag() {
        return nextFlag;
    }

    /**
     * 设置是否有下级
     * 1:有:Y,0:无:N
     *
     * @param nextFlag 是否有下级
     */
    public Job setNextFlag(Integer nextFlag) {
        this.nextFlag = nextFlag;
        return this;
    }
}